Information processing apparatus and method, and storage medium

ABSTRACT

Disclosed is an information processing apparatus for controlling an application object moving autonomously in a shared virtual space in which avatars representing users of other information processing apparatuses are active. The apparatus comprises a distribution examining element for examining distribution of the active avatars in the shared virtual space, a coordinate controlling element for controlling coordinates of the application object in accordance with results of the examination by the distribution examining element and a display controlling element for controlling display of information by the application object controlled in coordinates by the coordinate controlling element.

BACKGROUND OF THE INVENTION

[0001] The present invention relates to an apparatus and a method forinformation processing and a storage medium for storing such a method.More particularly, the invention relates to an apparatus and a methodfor information processing and a storage medium for accommodating thatmethod, whereby advertisement information is presented in an efficientand effective manner to avatars that are active in a shared virtualspace.

[0002] There have existed personal computer network services such asNIFTY-Serve (trademark) of Japan and CompuServe (trademark) of theUnited State. Each of these entities allows a plurality of users toconnect their personal computers through modems and over a publicswitched telephone network to a centrally located host computer inaccordance with a predetermined communication protocol. A cyberspaceservice called Habitat (trademark) has been known in this field.

[0003] The development of Habitat was started in 1985 by LucasFilm Ltd.of the United States. When completed, Habitat was run by QuantumLink, aU.S. commercial network, for about three years before Fujitsu Habitat(trademark) began to be offered in Japan by NIFTY-Serve in February1990. Habitat embraces a virtual city called “Populopolis” which, drawnin two-dimensional graphics, is inhabited by users' alter egos calledavatars (incarnations of Hindu deities). Through their avatars, theusers carry on between them what is known as a chat (a real-timetext-based dialogue in which characters are input and read by users).More detailed information about Habitat is found in “Cyberspace: FirstSteps” (ed. by Michael Benedikt, 1991, MIT Press, Cambridge, Mass.,ISBN0-262-02327-X, pp. 282-307).

[0004] In a conventional cyberspace system run by the above-mentionedtype of personal computer network service, virtual streets as well ashouse interiors were described in two-dimensional graphics. For apparentmovement toward the depth of a scene or back to its front side, avatarswere simply moved upward or downward against a two-dimensionalbackground. There was precious little power of expression to make usersenjoy a virtual experience of walking or moving about in the virtualspace. Furthermore, a given user's avatar was viewed along with otherusers' avatars simply from a third party's point of view in the virtualspace. This was another factor detracting from the effort to let usershave more impressive virtual sensory experiences.

[0005] In order to improve on such more or less unimpressive proxyexperiences, there have been proposed functions which display a virtualspace in three-dimensional graphics and which allow users freely to moveabout in the virtual space from their avatars' points of view. Suchfunctions, disclosed illustratively in U.S. Pat. No. 5,956,038, areimplemented by use of 3D graphic data in description language calledVRML (Virtual Reality Modeling Language). A description of variouscyberspace environments in which users may carry on chats using avatarsis found in the Sep. 9, 1996 issue of Nikkei Electronics (a Japaneseperiodical; No. 670, pp. 151-159).

[0006] Where it is desired to present advertisement information toavatars that are active in the above-mentioned shared virtual space, ithas been customary to set up billboards at predetermined locationswithin the space, the billboards carrying the advertisements.

[0007] One disadvantage of such a conventional setup is that somebillboards may turn out to be located in places where few avatarscongregate. In that case, the advertisements obviously are noteffective.

[0008] Another disadvantage is that users, represented by their avatars,have difficulty taking in the advertisements unless they come close tothe billboards.

[0009] Furthermore, even if the billboards are erected where avatarsconcentrate, most of the avatars may already have seen the displayedadvertisements. In that case, it becomes difficult to present theadvertisement information to newly-arriving avatars that have not seenit yet.

[0010] In addition, because the advertisements remain the same incontent when presented to all avatars, it is difficult to present newadvertisement information efficiently to each avatar.

[0011] The present invention has been made in view of the abovecircumstances and provides an apparatus and a method for presentingadvertisement information to avatars in an efficient and effectivemanner.

SUMMARY OF THE INVENTION

[0012] In carrying out the invention and according to a first aspectthereof, there is provided an information processing apparatus forcontrolling an application object moving autonomously in a sharedvirtual space in which avatars representing users of other informationprocessing apparatuses are active, the information processing apparatuscomprising a distribution examining element for examining distributionof the active avatars in the shared virtual space, a coordinatecontrolling element for controlling coordinates of the applicationobject in accordance with results of the examination by the distributionexamining element and a display controlling element for controllingdisplay of information by the application object controlled incoordinates by the coordinate controlling element.

[0013] In one preferred structure of the information processingapparatus according to the first aspect of the invention, the displaycontrolling element may cause the application object to displayadvertisements.

[0014] According to a second aspect of the invention, there is providedan information processing method for use with an information processingapparatus for controlling an application object moving autonomously in ashared virtual space in which avatars representing users of otherinformation processing apparatuses are active, the informationprocessing method comprising the steps of examining distribution of theactive avatars in the shared virtual space, controlling coordinates ofthe application object in accordance with results of the examination inthe distribution examining step and controlling display of informationby the application object controlled in coordinates in the coordinatecontrolling step.

[0015] According to a third aspect of the invention, there is provided aprogram storage medium which stores a computer-readable program for useby an information processing apparatus for controlling an applicationobject moving autonomously in a shared virtual space in which avatarsrepresenting users of other information processing apparatuses areactive, the program comprising the steps of examining distribution ofthe active avatars in the shared virtual space, controlling coordinatesof the application object in accordance with results of the examinationin the distribution examining step and controlling display ofinformation by the application object controlled in coordinates in thecoordinate controlling step.

[0016] The information processing apparatus according to the firstaspect of the invention, the information processing method according tothe second aspect of the invention, and the program storage mediumaccording to the third aspect of the invention can permit controlling incoordinates of the application object that displays information inaccordance with the distribution of the avatars involved. This makes itpossible to present desired information to the users represented by theavatars in an efficient and effective manner.

[0017] According a fourth aspect of the invention, there is provided aninformation processing apparatus for controlling an application objectmoving autonomously in a shared virtual space in which avatarsrepresenting users of other information processing apparatuses areactive, the information processing apparatus comprising an attributeexamining element for examining attributes of the active avatars in theshared virtual space and a display controlling element for controllingdisplay of information by the application object in accordance withresults of the examination by the attribute examining element.

[0018] One preferred structure of the information processing apparatusaccording to the fourth aspect of the invention may further comprise acoordinate controlling element for controlling coordinates of theapplication object in accordance with results of the examination by theattribute examining element.

[0019] In another preferred structure of the information processingapparatus according to the fourth aspect of the invention, the displaycontrolling element may cause the application object to displayadvertisements.

[0020] According to a fifth aspect of the invention, there is providedan information processing method for use with an information processingapparatus for controlling an application object moving autonomously in ashared virtual space in which avatars representing users of otherinformation processing apparatuses are active, the informationprocessing method comprising the steps of examining attributes of theactive avatars in the shared virtual space and controlling display ofinformation by the application object in accordance with results of theexamination in the attribute examining step.

[0021] According to a sixth aspect of the invention, there is provided aprogram storage medium which stores a computer-readable program for useby an information processing apparatus for controlling an applicationobject moving autonomously in a shared virtual space in which avatarsrepresenting users of other information processing apparatuses areactive, the program comprising the steps of examining attributes of theactive avatars in the shared virtual space and controlling display ofinformation by the application object in accordance with results of theexamination in the attribute examining step.

[0022] The information processing apparatus according to the fourthaspect of the invention, the information processing method according tothe fifth aspect of the invention and the program storage mediumaccording to the sixth aspect of the invention can permit controlling ofthe information displayed by the application object in accordance withthe attributes of the avatars. This enables ever-new information to bepresented to the users symbolized by the avatars in an efficient andeffective manner.

[0023] According to a seventh aspect of the invention, there is providedan information processing apparatus for controlling an applicationobject moving autonomously in a shared virtual space in which avatarsrepresenting users of other information processing apparatuses areactive, the information processing apparatus comprising an examiningelement for examining at least either distribution or attributes of theactive avatars in the shared virtual space, a coordinate controllingelement for controlling coordinates of the application object inaccordance with results of the examination by the examining element, adisplay controlling element for controlling display of information bythe application object, a counting element for counting the number ofavatars positioned within a predetermined range around the applicationobject and a charging element for processing charges for the informationcontrolled in terms of display by the display controlling element inaccordance with results of the counting by the counting element.

[0024] In one preferred structure of the information processingapparatus according to the seventh aspect of the invention, the countingelement may weight the number of the avatars in keeping with theattributes thereof.

[0025] According to an eighth aspect of the invention, there is providedan information processing method for use with an information processingapparatus for controlling an application object moving autonomously in ashared virtual space in which avatars representing users of otherinformation processing apparatuses are active, the informationprocessing method comprising the steps of examining at least eitherdistribution or attributes of the active avatars in the shared virtualspace, controlling coordinates of the application object in accordancewith results of the examination in the examining step, controllingdisplay of information by the application object, counting the number ofavatars positioned within a predetermined range around the applicationobject and processing charges for the information controlled in terms ofdisplay in the display controlling step in accordance with results ofthe counting in the counting step.

[0026] According to a ninth aspect of the invention, there is provided aprogram storage medium which stores a computer-readable program for useby an information processing apparatus for controlling an applicationobject moving autonomously in a shared virtual space in which avatarsrepresenting users of other information processing apparatuses areactive, the program comprising the steps of examining at least eitherdistribution or attributes of the active avatars in the shared virtualspace, controlling coordinates of the application object in accordancewith results of the examination in the examining step, controllingdisplay of information by the application object, counting the number ofavatars positioned within a predetermined range around the applicationobject and processing charges for the information controlled in terms ofdisplay in the display controlling step in accordance with results ofthe counting in the counting step.

[0027] The information processing apparatus according to the seventhaspect of the invention, the information processing method according tothe eight aspect of the invention, and the program storage mediumaccording to the ninth aspect of the invention can permit counting ofthe number of the avatars located within a predetermined range aroundthe application object and, based on the results of the counting,process charges for the information displayed by the application object.This provides easy and reliable processing of the charges appropriate tothe effects of the information presented to the users.

[0028] Other objects, features and advantages of the invention willbecome more apparent upon a reading of the following description andappended drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

[0029]FIG. 1 is a block diagram showing a configuration of a sharedvirtual space offering system according to the present invention;

[0030]FIG. 2 is a block diagram showing a structure of a client PC inFIG. 1;

[0031]FIG. 3 is a block diagram of an AO server in FIG. 1;

[0032]FIG. 4 is a schematic view showing a typical setup in which thesystem of FIG. 1 works;

[0033]FIG. 5 is a schematic view depicting another typical setup inwhich the system of FIG. 1 works;

[0034]FIG. 6 is a schematic view indicating still another typical setupin which the system of FIG. 1 works;

[0035]FIG. 7 is a schematic view of a typical sandwich man;

[0036]FIG. 8 is a flowchart of steps in which the AO server of thesystem in FIG. 1 operates;

[0037]FIG. 9 is a tabular view of typical sandwich man data held by theAO server of FIG. 3;

[0038]FIG. 10 is a schematic view explaining where avatars and sandwichman are located illustratively in a given virtual world;

[0039]FIG. 11 is a schematic view explaining how a sandwich man moves inthe virtual world;

[0040]FIG. 12 is another schematic view explaining how a sandwich manmoves in the virtual world;

[0041]FIG. 13 is a flowchart of steps detailing an advertisement displayprocess in step S4 of FIG. 8;

[0042]FIG. 14 is a schematic view explaining how a sandwich man ispositioned relative to avatars;

[0043]FIG. 15 is a schematic view of a typical screen displayed by auser's browser represented by an avatar in FIG. 14;

[0044]FIG. 16 is a schematic view of a typical screen displayed by aanother user's browser symbolized by an another avatar in FIG. 14; and

[0045]FIG. 17 is a flowchart of steps constituting a process performedby a charge server in FIG. 1.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0046] Preferred embodiments of the present invention will be describedbelow with reference to the accompanying drawings.

[0047] For the moment, the description of the embodiments is preceded byan explanation hereunder of VRML (virtual reality modeling language), adescription language capable of handling three-dimensional informationin unified fashion through the use of a framework called WWW (World WideWeb) that offers diverse kinds of information over the Internet, aglobally established computer network.

[0048] The WWW, an information offering system utilized on the Internet,was developed by CERN (European Center for Nuclear Research) inSwitzerland. The system permits browsing over the network of informationmade up of text, images and sounds in what is known as hypertext format.Information held in WWW servers is transferred asynchronously toterminals such as personal computers in accordance with a protocolcalled HTTP (Hyper Text Transfer Protocol).

[0049] The WWW server is constituted by server software called an HTTPdemon and by HTML files that store hypertext information. The demonsignifies programs that perform management and processing in thebackground in a UNIX work environment. Hypertext information isexpressed in description language called HTML (HyperText MarkupLanguage). A hypertext description expresses a logical text structureenclosed by format codes “<” and “>” called tags. Description of linksto other information is provided by link information called anchors.Locations of information are designated by anchors using URL (UniformResource Locator).

[0050] Files described in HTML are transferred over a TCP/IP(Transmission Control Protocol/Internet Protocol) network in accordancewith the HTTP protocol. HTTP transfers requests from clients forinformation to WWW servers and sends hypertext information in HTML filesback to the clients.

[0051] An environment in which to utilize the WWW is provided by clientsoftware called WWW browsers such as Netscape Navigator (trademark ofNetscape Communications Corporation of the United States).

[0052] WWW browsers allow users to look up so-called websites, i.e.,URL-compatible files in WWW servers located over the Internet expandedthroughout the world. In what is known as net-surfing, users can hopfrom one website to another through links to access multitudes of WWWinformation sources.

[0053] Recently a new type of browsers called VRML browsers has beendeveloped. A VRML browser permits users to access WWW servers one afteranother through links established in hypertext regarding objects drawnin an extended WWW format, i.e., three-dimensional graphics in a 3Dspace described in 3D graphics description language called VRML.

[0054] Details of VRML are described illustratively in “VRML: Browsing &Building Cyberspace” (by Mark Pesce; 1995, New Readers Publishing, ISBN1-56205-498-8) and in “Latest Trends of VRML and CyberPassage” (articlesby Koichi Matsuda and Yasuaki Honda in a Japanese periodical “bit”published by Kyoritsu Shuppan Co., Ltd., 1996; Vol. 28, No. 7, pp.29-36; No. 8, pp. 57-65; No, 9, pp. 29-36; No. 10, pp. 49-58).

[0055] When a file described in VRML-compatible file format istransferred from a server to a user's personal computer and processed bybrowser, a three-dimensional virtual space is computed on the basis ofVRML data. The 3D virtual space thus computed is allowed to appear on adisplay of the user's personal computer.

[0056]FIG. 1 is a block diagram showing an overall configuration of ashared virtual space offering system embodying the present invention.

[0057] In FIG. 1, reference numerals 1, 2 and 3 denote client PCs(personal computers) in which a VRML browser and a WWW browser areinstalled and active. The PCs are connected to the Internet via IP(Internet service providers) 4, 5 and 6.

[0058] A LAN (Local Area Network) 9 hooked up to the Internet 7 througha router 8 is connected with a WWW server 10, a WLS (World LocationServer) 11, a shared server 12, AO (Application Object) servers 13 and14, a mail server 15, a communication server 16, and a charge server 25.These servers 10 through 16 and 25 are furnished with hard disk drives(HDD) 10 a, 10 b, 11 a through 16 a and 25 a, respectively.

[0059] The communication server 16 is connected to telephone sets 18 andfacsimile machines 19 via a public switched telephone network 17; to PHS(Personal Handyphone System) terminals 23 wirelessly via a PHS serviceprovider 20; and to pager terminals 24 wirelessly via a pager serviceprovider 21.

[0060]FIG. 2 is a block diagram illustrating a hardware structure of theclient PC 1 shown in FIG. 1.

[0061] In FIG. 2, reference numeral 30 stands for a CPU that controlsvarious components; 31 for a hard disk drive (HDD) that stores a VRML2.0 file, VRML contents made up of dance script programs and a sharedvirtual life growth script program based on Java (trademark of SunMicrosystems, Inc. of the United States), and sandwich man data; 32 fora CD-ROM drive for reading the VRML contents from a CD-ROM disk 33; 34for a ROM that stores BIOS (Basic Input Output Systems) and otherresources; 35 for a sound processing circuit connected to a microphone36 and a left-hand and a right-hand speaker 37 and 38; 39 for a modemconnected to the Internet 7; 40 for an I/O (input/output) interfaceconnected to a mouse 41 and a keyboard 42; 43 for a graphics processingcircuit incorporating a VRAM 44; 45 for a CRT monitor; and 46 for a RAM.

[0062] In operation, Netscape Navigator, a WWW browser operating onWindows 95 (trademark of Microsoft Corporation of the United States); aJava interpreter; and Community Place Browser, a VRML 2.0 browserdeveloped by Sony Corporation, are read into the RAM 46. Once placed inthe RAM 46, these programs are ready to be run by the CPU 30.

[0063] The VRML 2.0 browser incorporates QvLib, i.e., a VRML parsinglibrary (parser) developed by Silicon Graphics Inc. of the United Statesand offered free of charge; RenderWare, a software renderer provided byCriterion Software Ltd. of the United Kingdom; or a parser and arenderer having functions equivalent to those of the cited.

[0064] As shown in FIG. 1, Community Place Browser exchanges variousdata with Netscape Navigator acting as a WWW browser on the basis ofNCAPI (Netscape Client Application Programming Interface; a trademark).

[0065] Netscape Navigator is fed with an HTML file and VRML contents(including a VRML file and a Java-based script program) from the WWWserver 10 over the Internet 7. The received file and contents arerecorded onto the local HDD 31. Netscape Navigator processes the HTMLfile to display text and images on the CRT monitor. Community PlaceBrowser, on the other hand, processes the VRML file to display a 3Dvirtual space on the CRT monitor and varies the behaviors of objects inthe 3D virtual space in keeping with the results of processing of thescript programs by the Java interpreter.

[0066] Although not shown, the other client PCs 2 and 3 have the samestructure as the client PC 1.

[0067]FIG. 3 is a block diagram showing a typical structure of the AOserver 13. The structure of the AO server 13 is basically the same asthat of the client PC 1 in FIG. 2. The components in FIG. 2 ranging fromthe CPU 30 to the ROM 46 are reflected in FIG. 3 as a CPU 130 through aROM 146 respectively. The basic functions of these components in FIG. 3are the same as those of their counterparts in FIG. 2 and thus will notbe described further.

[0068] Although not shown, the shared server 12 and charge server 25 arestructurally the same as the AO server 13 in FIG. 3. The block diagramof FIG. 3 will thus be cited as needed in describing hereunder how theshared server 12 and charge server 25 are constituted.

[0069] Below is a description of how the above-described embodiment ofthe present invention works.

[0070] As an example, it is assumed here that VRML contents aredownloaded over the Internet and turned into a multi-user environmentwhere a single virtual space is shared by a plurality of users. Typicalsteps constituting the processing involved are described below withreference to FIGS. 4 through 6.

[0071] In FIG. 4, as indicated by numeral (1), the WWW browser is firstused to browse the home page of an website offering VRML contents. Inthis example, a website at http://pc.sony.co.jp/sapari/is looked up. Aspointed to by numeral (2), users of the client PCs 1 and 2 each downloadfrom the website the VRML contents made up of the VRML 2.0 file andscript program (Java-based growth script program) to implementautonomous avatar behavior in a VRML space.

[0072] Obviously, the VRML contents may be provided by means of a CD-ROMdisk 33 and may be read therefrom through the CD-ROM drive 32.

[0073] In each of the client PCs 1 and 2, as shown in FIG. 5, CommunityPlace Browser acting as a VRML 2.0 browser interprets and executes theVRML 2.0 file that has been downloaded and stored onto the local HDD 31.As indicated by numeral (3), the browser queries the WLS 11 about a URLof the shared server 12 based on VSCP (Virtual Society Server ClientProtocol). In response, as indicated by numeral (4), the WLS 11 refersto a shared server URL management table held on the HDD 11 a andnotifies the client PCs 1 and 2 of the URL of the shared server 12retrieved from the table.

[0074] Using the URL, the client PCs 1 and 2 link up to the sharedserver 12 as illustrated in FIG. 6. The linkup permits transmission ofshared messages through the shared server 12 regarding locations andmotions of shared 3D objects, as indicated by numeral (5) Thetransmission of the shared messages implements a multiuser environment,as pointed to by numeral (6).

[0075] More detailed steps for implementing the connection above arediscussed in U.S. Pat. No. 5,956,038.

[0076] The AO server 13 that manages behaviors of virtual life objectsin the shared virtual space exchange data about virtual life objectswith the shared server 12 by use of VSAP. The HDD 13 a contains dataabout specific virtual life objects (i.e., sandwich men in this case).

[0077] With this embodiment, a sandwich man “s” shown in FIG. 7 movesabout autonomously as a virtual life object in the virtual space(world). The sandwich man “s” carries plates P₁ and P₂ in front of hischest and on his back, the plates showing predetermined advertisementinformation. The autonomous action of the sandwich man “s” is controlledby the AO server 13.

[0078] How the sandwich man “s” is controlled in its toward a regionwith a higher concentration of avatars. In the situation of FIG. 10, theregion R₁ has six avatars located therein while three avatars congregatein the region R₂. In that case, as shown in FIG. 11, the sandwich man“s” moves toward the region R₁ that has the higher avatar concentrationthan the region R₂.

[0079] However, as indicated in FIG. 9, the avatars “a” through “f” inthe region R₁ have already seen the advertisement A₁, whereas theavatars “g” and “i” among the three avatars “g” through “i” in theregion R₂ have yet to see the advertisement A₁. As a result, it is notthe region R₁ but the region R₂ where the avatars yet to be met by thesandwich man (i.e., avatars yet to be presented with the advertisementA₁) are more concentrated. In that case, the sandwich man may as wellmove toward the region R₂ for better advertising effects.

[0080] The process of moving the sandwich man “s” is carried out by eachclient PC on the basis of the coordinate data supplied by the AO server13.

[0081] In step S4, the CPU 130 of the AO server 13 performs anadvertisement display process. Details of this process are shown in theflowchart of FIG. 13.

[0082] In step S21 of FIG. 13, the CPU 130 selects one of the avatarslocated within an aura 201 of the sandwich advertisements A₂ and A₃; theavatar “b” has seen the advertisement A₁ once and the advertisement A₂twice but has not seen the advertisement A₃ yet.

[0083] As described, the CPU 130 can examine the distribution of theavatars by referring to their coordinates stored on the hard disk drive131.

[0084] Illustratively, as sketched in FIG. 10, examining the coordinatesof the avatars in the virtual world 200 reveals that the avatars “a”through “f” are located in a region R₁ and the avatars “g” through “i”in a region R₂. A check on the attributes of the avatars in the regionsR₁ and R₂ thus determines whether the sandwich man “s” has so farpresented advertisements to each of these avatars.

[0085] In step S2 of FIG. 8, the CPU 130 detects regions with a highconcentration of avatars that have yet to meet the sandwich man “s”(i.e., avatars yet to be presented with advertisements). In step S3, theCPU 130 performs of a process of moving the sandwich man “s” to theregions where the avatars yet to be encountered congregate(specifically, movement data (coordinate data) representing the sandwichman “s” are output to each client PC via the shared server 12).

[0086] Suppose that a sandwich man is to move simply behavior throughprocessing by the AO server 13 will now be described by referring to theflowchart of FIG. 8.

[0087] In step S1 of FIG. 8, the CPU 130 of the AO server 13 examinesattributes of avatars in the shared virtual space (world) and theirdistribution. More specifically, the CPU 130 of the AO server 13acquires from the shared server 12 coordinates of each of the avatars inthe virtual world and stores the obtained avatar coordinates on the harddisk drive 131.

[0088]FIG. 9 shows in tabular form typical sandwich man data stored onthe hard disk drive 131. In this example, current coordinates (X, Y, Z)of avatars “a” through “i” in the virtual world are recorded. In FIG. 9,suffixes to the coordinates represent an avatar. For example, thecoordinates of the avatar “a” in the virtual world are defined as (Xa,Ya, Za); those of the avatar “b” are given as (Xb, Yb, Zb).

[0089] The number of times each avatar has seen an advertisement iscounted and stored (this is the number of times each avatar has met asandwich man; more precisely, the number of times each avatar hasentered an aura 201 (see FIG. 12) of the sandwich man “s”) The exampleof FIG. 9 shows illustratively that the avatar “a” has seen anadvertisement A₁ once but has yet to see man “s.” In the example of FIG.12, the avatar “g” is selected illustratively from among the threeavatars “g” through “i” in the region R₂.

[0090] In step S22, the CPU 130 examines the attribute of the avatarselected in step S21 (avatar “g” in this case). As indicated in FIG. 9,the avatar “g” has never seen the advertisement A₁ (i.e., has never metthe sandwich man “s” carrying the advertisement A₁).

[0091] In step S23, the CPU 130 causes the plates P₁ and P₂ of thesandwich man “s” to display an advertisement appropriate to theattribute examined in step S22. In this example, the plates P₁ and P₂indicate the advertisement A₁ for the avatar “g” to see. Morespecifically, data representing the advertisement A₁ are transferredfrom the AO server 13 to each client PC via the shared server 12. Giventhe data, the client PCs cause the plates P₁ and P₂ of the sandwich man“s” to display the advertisement A₁.

[0092] In step S24, the CPU 130 updates the attribute of the avatarselected in step S22. In this example, the attribute of the avatar “g”is modified to indicate that the avatar has seen the advertisement A₁once.

[0093] In step S25, the CPU 130 checks to see if all avatars within theaura 201 have been selected. If there is any avatar yet to be selected,step S21 is reached again and subsequent steps are repeated.

[0094] Suppose now that the avatar “h” is selected in step S21. In thatcase, the CPU 130 examines the attribute of the avatar “h” in step S22.As indicated in FIG. 9, the avatar “h” has seen the advertisement A₁once but has never seen the advertisement A₂. Then the CPU 130, reachingstep S23, causes the plates P₁ and P₂ of the sandwich man “s” to displaythe advertisement A₂.

[0095] In step S24, the CPU 130 updates the attribute of the avatar “h”to indicate that the avatar has seen the advertisement A₂ once. In stepS25, the CPU 130 checks to see if all avatars within the aura 201 havebeen selected. If there is any avatar yet to be selected, step S21 isreached again and subsequent steps are repeated. If in step S25 the CPU130 has ascertained that all avatars within the aura 201 have beenselected, the process is brought to an end.

[0096] The process outlined above is further described below withreference to FIGS. 14 through 16. Illustratively, as shown in FIG. 14,suppose that the avatars “g” and “h” in the virtual world 200 arelocated inside the aura 201 of the sandwich man “s.” In that case, thebrowser of the user G symbolized by the avatar “g” causes the plates P₁and P₂ of the sandwich man “s” to display images of the advertisement A₁as shown in FIG. 15.

[0097] On the other hand, as depicted in FIG. 16, the browser of theuser H represented by the avatar “h” causes the plates P₁ and P₂ of thesandwich man “s” to display images of the advertisement A₂.

[0098] That is, the advertisement carried by the plates P₁ and P₂ of thesandwich man “s” varies from one avatar to another (i.e., from one userto another) That never happens in the real world but is made possible inthe virtual space. The scheme enables each user to be presented with newadvertisement information more efficiently than before.

[0099] When the advertisement display process in step S4 of FIG. 8 iscompleted as described above, step S5 is reached. In step S5 of FIG. 8,the CPU 130 of the AO server 13 checks to see if there is any region inthe virtual world 200 to which the sandwich man has never been before.If there is any such region, step S2 is reached again and subsequentsteps are repeated. If in step S5 no region is judged to exist to whichthe sandwich man has yet to go, the process is terminated.

[0100] Where there are a plurality of sandwich men, the processesdescribed above are carried out individually with regard to each ofthem.

[0101] As described, each sandwich man “s” moves around in the virtualworld 200 carrying advertisement information on the plates P₁ and P₂. Bycoming close to avatars, the sandwich man presents various kinds ofadvertisement information to the users they represent.

[0102] The provider of the virtual world 200 processes charges for thepresentation of advertisements in that world. The charge processing iscarried out by the charge server 25 as outlined in FIG. 17.

[0103] In step S41 of FIG. 17, the CPU 130 of the charge server 25counts the number of avatars (N₁) met once by the sandwich man “s” andthe number of avatars (N₂) met twice or more by the same sandwich man.In the example of FIG. 9, the number of avatars (N₁) to which thesandwich man “s” has presented the advertisement A₁ once is six, whilethe number of avatars (N₂) to which the sandwich man has met twice ormore carrying the same advertisement is one.

[0104] In step S42, the CPU 130 of the charge server 25 calculates aweighted value NW using the following formula:

N _(W) =N ₁ W ₁ +N ₂ W ₂

[0105] where, W₁ and W₂ are coefficients by which to weight the avatarcounts N₁ and N₂ respectively. Illustratively, the coefficient W₁ may be10 and the coefficient W₂ may be 1. In this case, the number of avatarsto which an advertisement is presented for the first time is weightedten times as much as the number of avatars to which the advertisementhas been presented twice or more.

[0106] In step S43, the CPU 130 of the charge server 25 processescharges for the value N_(W) calculated in step S42. Specifically, theadministrator of the virtual world charges the sponsor of theadvertisement A₁ a fee for the value N_(W) based on the fact that theadvertisement A₁ has been presented to the avatars of N_(W) users.

[0107] The series of steps described above may be executed either byhardware or by software. For software-based processing to take place,programs constituting the software may be installed upon use from theInternet 7 or from a suitable storage medium into the client PCs 1, 2and 3, shared server 12, AO server 13, and charge server 25.

[0108] As shown in FIG. 2 or 3, the storage medium is offered to usersapart from computers not only as a package medium constituted by anoptical disk 52 or 152 (including DVD (digital versatile disk) apartfrom the program-recorded CD-ROM 33 or 133), a magnetic disk 53 or 153(including floppy disks), a magneto-optical disk 54 or 154 (including MD(Mini-disk)), or a semiconductor memory 55 or 155, any of them loadedinto a drive 51 or 151; but also in the form of the ROM 34 or 134 or thehard disk drive 31 or 131 which contains the programs and which areincorporated beforehand in the client PC 1, shared server 12, AO server13, and charge server 25.

[0109] In this specification, the steps which are preserved on a programstorage medium and which describe the programs to be executed representnot only processes that are carried out in the depicted sequence (i.e.,on a time series basis) but also those that are conducted parallelly orindividually.

[0110] In this specification, the term “system” refers to an entireconfiguration made up of a plurality of component devices.

[0111] As many apparently different embodiments of this invention may bemade without departing from the spirit and scope thereof, it is to beunderstood that the invention is not limited to the specific embodimentsthereof except as defined in the appended claims.

What is claimed is:
 1. An information processing apparatus forcontrolling an application object moving autonomously in a sharedvirtual space in which avatars representing users of other informationprocessing apparatuses are active, said information processing apparatuscomprising: distribution examining means for examining distribution ofsaid active avatars in said shared virtual space; coordinate controllingmeans for controlling coordinates of said application object inaccordance with results of the examination by said distributionexamining means; and display controlling means for controlling displayof information by said application object controlled in coordinates bysaid coordinate controlling means.
 2. An information processingapparatus according to claim 1, wherein said display controlling meanscauses said application object to display advertisements.
 3. Aninformation processing method for use with an information processingapparatus for controlling an application object moving autonomously in ashared virtual space in which avatars representing users of otherinformation processing apparatuses are active, said informationprocessing method comprising the steps of: examining distribution ofsaid active avatars in said shared virtual space; controllingcoordinates of said application object in accordance with results of theexamination in said distribution examining step; and controlling displayof information by said application object controlled in coordinates insaid coordinate controlling step.
 4. A program storage medium whichstores a computer-readable program for use by an information processingapparatus for controlling an application object moving autonomously in ashared virtual space in which avatars representing users of otherinformation processing apparatuses are active, the program comprisingthe steps of: examining distribution of said active avatars in saidshared virtual space; controlling coordinates of said application objectin accordance with results of the examination in said distributionexamining step; and controlling display of information by saidapplication object controlled in coordinates in said coordinatecontrolling step.
 5. An information processing apparatus for controllingan application object moving autonomously in a shared virtual space inwhich avatars representing users of other information processingapparatuses are active, said information processing apparatuscomprising: attribute examining means for examining attributes of saidactive avatars in said shared virtual space; and display controllingmeans for controlling display of information by said application objectin accordance with results of the examination by said attributeexamining means.
 6. An information processing apparatus according toclaim 5, further comprising coordinate controlling means for controllingcoordinates of said application object in accordance with results of theexamination by said attribute examining means.
 7. An informationprocessing apparatus according to claim 5, wherein said displaycontrolling means causes said application object to displayadvertisements.
 8. An information processing method for use with aninformation processing apparatus for controlling an application objectmoving autonomously in a shared virtual space in which avatarsrepresenting users of other information processing apparatuses areactive, said information processing method comprising the steps of:examining attributes of said active avatars in said shared virtualspace; and controlling display of information by said application objectin accordance with results of the examination in said attributeexamining step.
 9. A program storage medium which stores acomputer-readable program for use by an information processing apparatusfor controlling an application object moving autonomously in a sharedvirtual space in which avatars representing users of other informationprocessing apparatuses are active, the program comprising the steps of:examining attributes of said active avatars in said shared virtualspace; and controlling display of information by said application objectin accordance with results of the examination in said attributeexamining step.
 10. An information processing apparatus for controllingan application object moving autonomously in a shared virtual space inwhich avatars representing users of other information processingapparatuses are active, said information processing apparatuscomprising: examining means for examining at least either distributionor attributes of said active avatars in said shared virtual space;coordinate controlling means for controlling coordinates of saidapplication object in accordance with results of the examination by saidexamining means; display controlling means for controlling display ofinformation by said application object; counting means for counting thenumber of avatars positioned within a predetermined range around saidapplication object; and charging means for processing charges for theinformation controlled in terms of display by said display controllingmeans in accordance with results of the counting by said counting means.11. An information processing apparatus according to claim 10, whereinsaid counting means weights said number of the avatars in keeping withthe attributes thereof.
 12. An information processing method for usewith an information processing apparatus for controlling an applicationobject moving autonomously in a shared virtual space in which avatarsrepresenting users of other information processing apparatuses areactive, said information processing method comprising the steps of:examining at least either distribution or attributes of said activeavatars in said shared virtual space; controlling coordinates of saidapplication object in accordance with results of the examination in saidexamining step; controlling display of information by said applicationobject; counting the number of avatars positioned within a predeterminedrange around said application object; and processing charges for theinformation controlled in terms of display in said display controllingstep in accordance with results of the counting in said counting step.13. A program storage medium which stores a computer-readable programfor use by an information processing apparatus for controlling anapplication object moving autonomously in a shared virtual space inwhich avatars representing users of other information processingapparatuses are active, the program comprising the steps of: examiningat least either distribution or attributes of said active avatars insaid shared virtual space; controlling coordinates of said applicationobject in accordance with results of the examination in said examiningstep; controlling display of information by said application object;counting the number of avatars positioned within a predetermined rangearound said application object; and processing charges for theinformation controlled in terms of display in said display controllingstep in accordance with results of the counting in said counting step.